package com.zlt.bkparking.service;

import com.zlt.bkparking.dto.*;
import com.zlt.bkparking.entity.Admin;
import com.zlt.bkparking.entity.Permission;
import com.zlt.bkparking.entity.Role;
import com.zlt.bkparking.vo.BusinessUserVO;
import com.zlt.bkparking.vo.Pager;
import com.zlt.bkparking.vo.PermissionList;
import com.zlt.bkparking.vo.PermissionsVO;

import java.util.List;

public interface AdminService {

    boolean login(AdminUserDTO adminUserDTO);

    Admin selectUserByUsername(String username);

    List<Role> selectAllRoleList();

    List<Role> selectAllRoleListearch(String rName);

    boolean saveRole(RoleDTO roleDTO);

    boolean deleteRole(RoleDTO roleDTO);

    boolean robakRole(RoleDTO roleDTO);

    List<PermissionList> getRoles();

    List<Permission> getOwnRoles(Integer rId);

    Boolean saveAdminPer(RolePermissionsVO rolePermissionsVO);

    List<PermissionsVO> getAllPermission();

    List<Permission> getNodes();

    Permission getPermissionByPid(Long pid);

    Boolean savePermission(PrDTO permissionsDTO);

    Pager<BusinessUserVO> getAllUser(BusinessUserDTO businessUserDTO);

    Boolean userSave(BusinessUserDTO businessUserDTO);

    Boolean userDeleteAdmin(BusinessUserDTO businessUserDTO);

    Boolean pwd(BusinessUserDTO businessUserDTO);
}
